<!DOCTYPE html>
<html>
<head>
	<title>函数</title>
</head>
<body>
<!-- 
1.创建函数的方式
	-1.构造函数创建 new Function()
	-2.函数字面量创建 function 函数名(){}

2.什么是函数
	函数是一个对象。
	函数可以封装一些功能（代码），（前提）需要时可以执行代码
	-封装好的函数必须调用才能执行
	-如果typeof arr（创建之后的函数）返回function 
	函数创建完之后并不会直接执行，需要调用才执行函数。

3.函数参数
	语法：function 函数名(形参1,形参2,...){}
	调用函数 语法：函数名()
	我们可以将变量放到()小括号内作为参数（形式参数），形参相当于变量，只是不需要声明在调用函数时传入实参（实际参数）形参对应的值
	-可以是任何数据类型
	-在函数中实参可以传对象
	调用函数时，解析器不会判断实参个数，多余的实参不会被赋值。
	如果实参个数比形参少，形参没有对应的实参，形参结果会返回undefined

return函数返回值
	可以将函数中需要的值返回，不用在函数体内直接写输入，可以在函数体外输出。
	语法：return 返回值;
		  return ;返回undefined
		  return 返回值; 下面的任何代码第一不会执行	

立即执行函数//匿名执行
语法：
	(function (){要输出的内容})()
特点：
	-没有函数名称
	-立即执行
	-只能执行一次
注意！：
	没函数名称的函数必须用(小括号)括起来，后面再加(小括号)调用

-函数内可以放函数
-return返回的类型是任何数据类型，可以是基本数据类型，也可以是引用数据类型，还可以是一个函数

可以带参数的函数
	小括号中可以直接写参数（形参），不需要直接说明
	参数其实本身就是个变量
	形参对应的值通过调用函数中传入的实参（具体数值）


 -->
</body>

<script type="text/javascript">
// var function =  function new(i){
// 	console.log(i*5);
// }
// new(5);

// function sum(i,l){
// 	var a = 10;
// 	var b = 22;
// 	console.log((a+b)-(l+i));
// }
// sum(7,2);

// var fun = new Function();
// 	fun.name = "函数";
// 	fun.age = 19;
// 	fun.hello = '54566';
// console.log(fun.name)
// console.log(typeof fun);

// function arr(i,b){
// 	 console.log(i*b);
// 	return console.log('hellow')
// 	console.log(i);
// }
//函数调用
// arr(6,7);

//练习：定义一个函数，判断一个数是不是偶数，是返回true不是返回false

// function sum(a){
// 	if (a%2==0) {
// 		console.log(true);
// 	}else{
// 		console.log(false);
// 	}
// }
// sum(40);

// var fun = new Function();
// console.log(typeof fun);

// var zero = function(){
// 	alert('张大大');
// }
// zero();

// var obj = {
// 	name : '张',
// 	age : 19,
// 	sex : 'boy',
// 	sayName : {name:"小男人"}
// }

// function fun1(){
// 	function fun2(){
// 		alert('凡凡');
// 	}
// 	fun2();
// }
// fun1();
// var z = fun1();
// console.log(z);

//判断奇数偶数

// function isou(num){
// 	return num%2==0;
// }
// var age = isou(0);
// console.log(age);

// function sum(){
// 	var a = sum;

// if(a%2==0) {
// 	console.log(true);
// }else{
// 	console.log(false);
// }
// }
// sum(5);

//求圆的面积 π*r*r
function mian(r){
	return Math.PI*r*r;
}
var yuan = mian(10);
console.log(yuan);
//圆的周长 π*d
function zhou(d){
	return Math.PI*d
}
var l = zhou(5);
console.log(l);
//正方体体积 a**3
function zhen(a){
	return a**3;
}
var z = zhen(5);
console.log(z);


</script>
</html>